﻿' Follow steps 1a or 1b and then 2 to use this custom control in a XAML file.
'
' Step 1a) Using this custom control in a XAML file that exists in the current project.
' Add this XmlNamespace attribute to the root element of the markup file where it is 
' to be used:
'
'     xmlns:MyNamespace="clr-namespace:eComic"
'
'
' Step 1b) Using this custom control in a XAML file that exists in a different project.
' Add this XmlNamespace attribute to the root element of the markup file where it is 
' to be used:
'
'     xmlns:MyNamespace="clr-namespace:eComic;assembly=eComic"
'
' You will also need to add a project reference from the project where the XAML file lives
' to this project and Rebuild to avoid compilation errors:
'
'     Right click on the target project in the Solution Explorer and
'     "Add Reference"->"Projects"->[Browse to and select this project]
'
'
' Step 2)
' Go ahead and use your control in the XAML file. Note that Intellisense in the
' XML editor does not currently work on custom controls and its child elements.
'
'     <MyNamespace:VirtualizingStackPanel/>
'
Imports System
Imports System.Windows.Controls
Imports System.Windows.Controls.Primitives


Public Class eComicVirtualizingStackPanel
    Inherits VirtualizingStackPanel

    Protected Overrides Sub OnCleanUpVirtualizedItem(ByVal e As System.Windows.Controls.CleanUpVirtualizedItemEventArgs)
        Dim p As comicPage = CType(e.Value, comicPage)
        MyBase.OnCleanUpVirtualizedItem(e)
        If Not p Is Nothing Then p.cleanup()
    End Sub

End Class
